package mn.more.wits.client;

import com.google.gwt.user.client.rpc.AsyncCallback;
import mn.more.wits.client.dto.Payload;

public interface AuthProviderAsync {

	/** authenticate the username/password combination on the server-side. */
	void authenticate(Payload auth, AsyncCallback async);

	/** retrieve the currently in-session authentication model. */
	void getAuth(AsyncCallback async);

	/** invalid the currently in-session authentication model, effectively logging out of a session. */
	void invalidate(AsyncCallback async);

	void changePassword(Payload auth, AsyncCallback async);
}
